// pages/my/install/index/index.js
const call = require('../../../utils/request.js')
let user = null;
Page({

  /**
   * 页面的初始数据
   */
  data: {
    winShow:false, //是否显示组件
    nickName:'',  //昵称
    avatar: '../../../images/defaultHeader.png', //头像路径
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    const userInfo = wx.getStorageSync('user');
    console.log("设置获取缓存用户信息",userInfo)
    if(userInfo){
      user = userInfo;
      this.setData({
        avatar: (userInfo.avatar),
        nickName:userInfo.nickname,
      })
    }
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {

  },

  /**
   * 跳转页面
   */
  toUrl(e){
    let url = e.currentTarget.dataset.url;
    console.log(url)
    wx.navigateTo({
      url: url,
    })
  },

  //图片选择
  chooseImg(){
    let that = this;
    wx.chooseImage({
      count: 1,
      sizeType: ['original', 'compressed'],
      sourceType: ['album', 'camera'],
      success (res) {
        // tempFilePath可以作为img标签的src属性显示图片
        const tempFilePaths = res.tempFilePaths[0];
        const file = res.tempFiles[0];
        console.log(res)
        //图片上传
        // call.post('/api/user/upload_imgs',file).then(res=>{
        //   console.log("上传图片",res)
        // })
        var token = wx.getStorageSync('token')
        wx.showLoading({
          title: '正在上传',
          mask:true
        })
        wx.uploadFile({
          header: {
            "Content-Type": "multipart/form-data",
            "Authorization":`Bearer ${token}`
          },
          filePath: tempFilePaths,
          name: 'file',
          url: `${call.host}/api/user/upload_imgs`,
          success:(res)=>{
            wx.hideLoading();
            const r = JSON.parse(res.data);
            if(r.code == 0){
              that.modifyInfo('avatar',r.data[0],1)
              that.setData({
                avatar:(call.host+r.data[0])
              })
            }
          },
          fail: (res)=>{
            wx.hideLoading();
            console.log("上传失败",res)
          }
        })
      }
    })
  },

  /**
   * 修改个人信息
   */
  modifyInfo(field,value,type){
    wx.showLoading({
      title: '正在保存',
      mask:true
    })
    call.post('/api/home/update_field',{
      field,value,type
    }).then(res=>{
      console.log("修改个人信息",res)
      //修改缓存中的个人信息数据 
      user[field] = value;
      if(field == "avatar") user[field] = (call.host+value);
      wx.setStorageSync('user', user);
      wx.hideLoading();
    })
  },

  /**
   * 显示隐藏弹窗
   */
  winShow(){
    this.setData({
      winShow: true    
    })
  },
  /**
   * 弹窗的确认
   */
  winSure(e){
    this.modifyInfo('nickname',e.detail.value,1);
    this.setData({
      nickName:e.detail.value,
    })
  },
})